Root cause identification is a class of methods in the problem-solving field that identify root causes of problems or events. Generally, problems can be solved by addressing the root causes of the problems, instead of addressing symptoms that are being continuously derived from the problem. Ideally, when the root cause has been addressed, the symptoms following the root cause will disappear. Traditional root cause analysis is performed in a systematic manner with conclusions and root causes supported by evidence and established causal relationships between the root cause(s) and problem(s). During root cause identification, however, it is difficult to differentiate between events that demand manual intervention of an operations team of a service/product from events that do not demand manual intervention. Such differentiation is important, for example, in software services and enterprise IT departments because an ongoing operation cost of a service is proportional with the number of support tickets that a system issues.
Some existing systems detect errors in a process by assuming that a first or last error event that occurs during analysis window execution of the process is the root cause. However, this approach lacks precision and may produce false alarms (e.g., if the error event is not severe, is only temporary, or if the event self-resolves). Further, it is difficult and time-consuming to trace code paths to understand the reason for each failure.